package com.bruce.demo2.patterns.demo2.structural.demo12.flyweight.demo1;

import java.math.BigDecimal;

/**
 * @PROJECT_NAME: design_patterns
 * @DESCRIPTION: 抽象享元角色：俄罗斯方块具有不同的形状，我们可以对这些形状向上抽取出AbstractBox，用来定义共性的属性和行为。
 * @AUTHOR: CNBruceLee
 * @DATE: 2021/8/2 6:32
 */
public abstract class AbstractBox {
    /**
     * 获取图形的方法
     *
     * @return
     */
    public abstract String getShape();

    /**
     * 显示图形与颜色
     *
     * @param color：颜色既是外部状态
     */
    public void display(String color) {
        System.out.println("方块形状：" + this.getShape() + " 颜色：" + color);
    }
}
